$(document).ready(function() {
	load();
	//用于清空form表单的内容
});

$("#addMenus").on("hidden.bs.modal", function() {
	$('#addMenuForm')[0].reset();
	load();
	$(this).removeData("bs.modal");
});

var load = function() {
	$('#exampleTable')
			.bootstrapTreeTable(
					{
						id : 'menuId',
						parentColumn : 'parentId',
						type : "GET", // 请求数据的ajax类型
						url :  '/menus', // 请求数据的ajax的url
						ajaxParams : {}, // 请求数据的ajax的data属性
						expandColumn : '1',// 在哪一列上面显示展开按钮
						striped : true, // 是否各行渐变色
						bordered : true, // 是否显示边框
						expandAll : false, // 是否全部展开
                        // toolbar : '#exampleToolbar',
						columns : [
								{
									title : '编号',
									field : 'menuId',
									visible : false,
									width : '140px'
								},
								{
									title : '名称',
									field : 'name'
								},

								{
									title : '图标',
									field : 'icon',
									width : '80px;text-align:center',
									formatter : function(item, index) {
										return item.icon == null ? ''
												: '<i class="' + item.icon
														+ ' fa-lg"></i>';
									}
								},
								{
									title : '类型',
									field : 'type',
									width : '120px;text-align:center',
									formatter : function(item, index) {
										if (item.type === 0) {
											return '<span class="label label-primary">目录</span>';
										}
										if (item.type === 1) {
											return '<span class="label label-success">菜单</span>';
										}
										if (item.type === 2) {
											return '<span class="label label-warning">按钮</span>';
										}
									}
								},
								{
									title : '地址',
									field : 'url'
								},
								{
									title : '权限标识',
									field : 'percode'
								},
								{
									title : '状态',
									field : 'status',
									width : '80px;text-align:center',
									formatter : function(item, index) {
										if (item.status === 0) {
											return '启用';
										}
										if (item.status === 2) {
											return '未启用';
										}
									}
							 	},
							 	{
									title : '排序',
									field : 'sort',
									width : '80px;text-align:center'
								},
								{
									title : '操作',
									field : 'menuId	',
									width : '200px;text-align:center',
									formatter : function(item, index) {
										var e = '<a class="btn btn-warning btn-sm" href="#" mce_href="#" title="编辑" onclick="edit(\''+ item.menuId+ '\')">编辑</i></a> ';
										var p="";
										if(item.type!=2){
											var p = '<a class="btn btn-primary btn-sm"  href="#" mce_href="#" title="添加下级" onclick="addMenus(\''+ item.menuId+ '\',\''+ item.name+ '\',\''+ item.type+ '\')">添加下级</i></a> ';
										}
										var d = '<a class="btn btn-danger btn-sm"  href="#" title="删除"  mce_href="#" onclick="remove(\''+ item.menuId+ '\')">删除</i></a> ';
										return e + p + d;
									}
								} ]
					});
}
function reLoad() {
	load();
}

function addMenus(pid,pname,type){
	//对表单数据进行校验
	$("#id").val("");
	$("#parentid").val(pid);
	if("undefined"==typeof(pname)){
		$("#parentName").val("根目录");
	}else{
		$("#parentName").val(pname);
	}
	console.log(type)
	if("undefined"!=typeof(type)&&type==1){
		$("#type0").attr({"disabled":"disabled"});
		$("#type1").attr({"disabled":"disabled"});
		$("#type2").removeAttr("disabled");
		$("#type2").prop("checked","true");
	}else if("undefined"==typeof(type)){
		$("#type1").attr({"disabled":"disabled"});
		$("#type2").attr({"disabled":"disabled"});
		$("#type0").removeAttr("disabled");
		$("#type0").prop("checked","true");
	}else{
		$("#type0").attr({"disabled":"disabled"});
		$("#type1").removeAttr("disabled");
		$("#type1").prop("checked","true");
		$("#type2").attr({"disabled":"disabled"});
	}
	$('#addMenus').modal({
         keyboard: true
     });
}

function checkForm(){
	if($("#name").val()==""||$("#name").val()==null){
		layer.msg("请填写菜单名称");
		return false;
	}else{
		var flag=true;
		//验证菜单名称是够重复
		$.ajax({
			url:"/getMenusByName?name="+$("#name").val()+"&id="+$("#id").val(),
			type:"post",
			dataType:"json",
			async: false,
			success:function(result){
				if(result.code==-1){
					flag= false;
					layer.msg("该菜单名称已经存在，不能重复添加！");
				}
			}
		});
		if(!flag){
			return false;
		}
		
	}
	var parentName =$("#parentName").val();
	var a = $("input[name='type']:checked").val();
	if(a==1&&$("#url").val()==""){
		layer.msg("请填写链接地址");return false;
	}
	if($("#percode").val()==""||$("#percode").val()==null){layer.msg("请填写权限代码");return false;}
	if($("#icon").val()==""||$("#icon").val()==null){layer.msg("请选择图标");return false;};
	if($("#sortstring").val()==""||$("#sortstring").val()==null){layer.msg("请填写排序号码");return false;};
	
}


function remove(id) {
	layer.confirm('确定要删除选中的记录？', {
		btn : [ '确定', '取消' ]
	}, function() {
		$.ajax({
			url :"removeMenuById",
			type : "post",
			data : {
				'id' : id
			},
			success : function(data) {
				if (data.code == 200) {
					layer.msg("删除成功");
					reLoad();
				} else {
					layer.msg(data.msg);
				}
			}
		});
	})
}
function edit(id) {
	$.ajax({
		url:"/getMenusById?id="+id,
		type:"POST",
		dataType:"json",
		success:function(data){
			$("#id").val(data.id);
			$("#parentid").val(data.parentid);
			$("#parentCode").val(data.parentcode);
			$("#name").val(data.name);
			$("#parentName").val(data.bei1);
			$("#type0").attr({"disabled":"disabled"});
			$("#type1").attr({"disabled":"disabled"});
			$("#type2").attr({"disabled":"disabled"});
			if(data.type==0){
				$("#type0").prop("checked","true");
				$("#type1").removeAttr("checked");
				$("#type2").removeAttr("checked");
			}else if(data.type==1){
				$("#type1").prop("checked","true");
				$("#type0").removeAttr("checked");
				$("#type2").removeAttr("checked");
			}else{
				$("#type2").prop("checked","true");
				$("#type0").removeAttr("checked");
				$("#type1").removeAttr("checked");
			}
			$("#url").val(data.url);
			$("#percode").val(data.percode);
			if(data.status==0){
				$("#status0").attr({"checked":"checked"});
				$("#status2").removeAttr("checked");
			}else{
				$("#status2").attr({"checked":"checked"});
				$("#status0").removeAttr("checked");
			}
			$("#sortstring").val(data.sort);
			$("#icon").val(data.icon);
		}
	});
	
	
	$('#addMenus').modal({
         keyboard: true
     });
}
function batchRemove() {

}

function selectIcon(){
	layer.open({
        type: 2,
		title:'图标列表',
        content: '/icons',
        area: ['30%', '60%'],
        success: function(layero, index){
        }
    });
}
